Skip to content

设计一个综合的 AI Agent,不能仅仅停留在“写几段 Prompt 调用大模型”的 Demo 思维,而是要具备复杂 AI 应用怎么编排”的工程落地思维。根据系统的资料与工程实践,设计一个生产级的 Agent 综合需要考虑以下五大核心方面:

一、 定义任务类型与编排范式选型

在动手写代码前,首先要评估任务的执行路径是否可以提前穷举,以此来决定大模型在系统中的控制权有多大:

  • Workflow(工作流):如果任务流程清晰、步骤有限且容错率低(如审批流),控制权应该在图结构(Graph)里,LLM 只是作为其中一个节点做生成或判断。
  • 纯 Agent:如果任务极度开放、无法提前写死执行步骤(如排查线上故障),则由大模型作为决策者,通过不断观察和推理来决定下一步。
  • Agentic Workflow:真实 To B 场景的优选方案。全局用 Workflow 约束骨架结构以保证可控性,在局部不确定的节点嵌入 Agent 循环让模型自己探索。
  • 多智能体(Multi-Agent):虽然分工更专业,但切忌盲目跟风,因为它会带来极高的通信成本、Token 消耗和调试难度。

二、 核心组件(Harness)的精细化设计

Agent 运行公式是 Agent = LLM + Planning + Memory + Tools,你需要对这些外围组件进行精细化设计:

  • 推理与规划 (Planning):根据任务长度选择合适的范式。比如,动态性强的用 ReAct(走一步看一步),长步骤任务用 Plan-and-Execute(先全局规划再执行),需要提升质量的叠加 Reflection(自我纠错)。长任务还要考虑通过记录结构化笔记(Note-taking)或压缩历史(Compaction)来防止状态丢失。
  • 记忆系统 (Memory):严格区分短期工作记忆长期持久化记忆,切忌把历史聊天记录一股脑塞进上下文。更关键的是要设计记忆的代谢机制(如动态时间权重衰减、新旧事实冲突清理),否则废弃的旧记忆会严重干扰模型判断。
  • 工具生态 (Tools):理清工具系统三层的边界:用 Function Calling 解决模型如何输出意图,用 MCP (Model Context Protocol) 解决工具如何低成本、标准化地接入系统,用 Agent Skills 封装具体任务的 SOP(标准操作流程)指导模型怎么做。

三、 上下文工程 (Context Engineering) 与网关治理

Prompt 决定模型收到什么指令,Context 决定模型实际看到什么世界

  • 上下文的隔离与高信噪比:不要把所有信息混为一谈。RAG(共享知识)、Memory(个性化经验)和 Tools(工具结果)应该分区注入,并做好去重、压缩和过滤。不要盲目迷信长上下文,信息越杂模型越容易“中间迷失”,宁可上下文少一点也要保证高信噪比。
  • 引入模型网关 (Model Gateway):为了系统稳定,必须建设模型网关层,负责多模型路由、Fallback(主模型挂了切备用)、限流、熔断以及 Token 预算控制(超预算时按优先级裁剪上下文)。
  • Prompt 的版本化配置:Prompt 必须被当作代码一样的配置进行版本管理,支持灰度发布、回滚以及变量注入运行时的严格校验。

四、 安全边界与合规性防护

AI 应用的安全面远比传统 CRUD 系统要宽,因为模型接收的外部输入是不可控的。

  • 权限决不能交给模型:模型只能提出“想调用什么工具”,但能否调用必须由底层系统基于 UserID 和租户 ID 进行硬鉴权(Hard Filters)。
  • 高危操作的人工阻断:对于改配置、发邮件、删数据等敏感的写操作,必须加入人工二次确认和审计链路。
  • 防范提示词注入 (Prompt Injection):来自外部读取的文档、邮件或工具返回结果可能包含恶意指令。必须在物理上将系统指令与不可信输入(如使用 XML 标签隔离)分开,并辅以沙箱隔离。

五、 评测闭环与可观测性

没有监控和回放,AI 的优化只能靠“玄学”瞎猜。

  • 全链路可观测:一次完整的请求不能只记录最终答案,必须记录 Prompt 版本、检索命中的片段分数、工具调用参数、模型 TTFT(首字延迟)、Token 消耗以及错误码等完整 Trace 信息。
  • 切片式评测体系:不要仅依赖公开 Benchmark,应构建贴合自己业务的 Golden Set(黄金验证集)。因为 Agent 执行步骤长,评测必须分段进行,包括:上下文召回率(Context Recall)、工具调用成功率、答案忠实度等指标,结合 LLM-as-Judge 自动初筛与人工复核闭环。

“满分级”面试答题框架

你可以把你的思路和缺失的部分融合,形成一套**“从业务到基建”**的六步黄金答题框架:

Step 1: 定义任务边界与入口设计 (Task & Input)

  • “首先,我会明确任务类型,决定是采用同步、流式还是异步交互,并在入口层做好请求标准化和幂等控制。”

Step 2: 核心编排范式选型 (Orchestration)

  • “第二步决定大模型的控制权。如果路径明确优先用 Workflow 保稳定;如果完全未知用纯 Agent (ReAct);而在 To B 生产中,我更倾向于 Agentic Workflow,用工作流管骨架,在局部节点让模型自由探索。”

Step 3: 核心组件的精细化设计 (Harness & Components)

  • “第三步设计外围支撑(Harness),公式是 LLM + Planning + Memory + Tools:
    • 记忆:严格区分短期(状态)和长期(偏好)记忆,并加入动态权重衰减和遗忘机制。
    • 工具:明确 Function Calling(表达意图)、MCP(接入标准)和 Agent Skills(任务 SOP)的边界。
    • 上下文:将 RAG、记忆、静态规则分开管理,防污染,并对长任务做压缩(Compaction)。”

Step 4: 引入模型网关与 Prompt 管理 (Gateway & Prompt)

  • “第四步沉淀基础设施。建设模型网关做路由、Fallback 和 Token 预算控制;并将 Prompt 纳入配置中心,实现版本化、灰度与回滚机制。”

Step 5: 安全合规与防线兜底 (Security & Boundaries)

  • “第五步建设防线。模型只能‘提出’动作,真正的**权限校验(硬鉴权)、敏感操作人工审核、Prompt 注入物理隔离(XML标签)**必须由底层代码强制执行。”

Step 6: 评测闭环与全链路观测 (Evaluation & Observability)

  • “最后建设评测与可观测性。没有回放就没有优化,必须记录完整的 Trace(包含 Prompt 版本、检索片段、工具参数、TTFT)。通过构建贴合业务的 Golden Set(黄金验证集),结合 LLM-as-Judge 自动初筛与人工复核,形成优化闭环。”

大纲:

  1. 编排(包括多 Agent 编排)
  2. 记忆(短期记忆、长期记忆、记忆生命周期管理:编码、存储、提取、巩固、反思、遗忘)
  3. RAG
  4. Tool Calling 和 MCP
  5. Prompt Engineering
  6. Context Engineering
  7. Harnness Engineering
  8. 微调
  9. 安全
  10. 评测
  11. 可观测
  12. 成本
  13. 时延
  14. 限流缓存
  15. 日志鉴权